ASP.NET Web Forms এ Data-bound Controls এমন কন্ট্রোলস যা ডেটাবেস বা অন্য কোনো ডেটা সোর্স থেকে ডেটা বাইন্ড করে ওয়েব পেজে প্রদর্শন করতে ব্যবহৃত হয়। এই কন্ট্রোলস ডেটা ডিসপ্লে এবং data binding প্রক্রিয়া সহজ করে তোলে। GridView, Repeater, এবং DataList হলো এমন কিছু জনপ্রিয় Data-bound Controls, যা ডেটা প্রদর্শন করতে ব্যবহৃত হয়।
GridView Control
GridView হলো সবচেয়ে জনপ্রিয় এবং শক্তিশালী ডেটা-বাইন্ড কন্ট্রোল, যা বড় এবং জটিল ডেটাসেটগুলিকে টেবিল আকারে প্রদর্শন করে। এটি ডেটার ওপর বিভিন্ন ধরনের অপারেশন যেমন edit, delete, update, paging ইত্যাদি সাপোর্ট করে।
বৈশিষ্ট্য:
- AutoGenerateColumns: যখন AutoGenerateColumns বৈশিষ্ট্যটি true থাকে, তখন GridView স্বয়ংক্রিয়ভাবে ডেটা সোর্সের কলামগুলো তৈরি করে।
- Paging: পেজিনেশন সাপোর্ট করে, যার মাধ্যমে বড় ডেটাসেট সহজে পেজে ভাগ করে দেখানো যায়।
- Sorting: ডেটাকে কলামের ভিত্তিতে সাজানো যায়।
- Editing and Deleting: GridView এর মাধ্যমে ডেটা সম্পাদনা এবং মুছে ফেলা যায়।
- TemplateFields: কাস্টমাইজড কলাম তৈরি করতে TemplateField ব্যবহার করা যায়।
উদাহরণ:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="True" DataSourceID="SqlDataSource1">
</asp:GridView>
এখানে, SqlDataSource1 একটি ডেটা সোর্স যা GridView কে ডেটা প্রদান করবে।
Repeater Control
Repeater কন্ট্রোল ডেটা প্রদর্শনের জন্য সবচেয়ে লাইটওয়েট এবং কাস্টমাইজড কন্ট্রোল। এটি ডেটার প্রতিটি আইটেমকে কাস্টম টেমপ্লেটের মাধ্যমে পুনরাবৃত্তি করে দেখায়। Repeater সাধারণত ছোট এবং স্বতন্ত্র ডেটাসেটগুলো প্রদর্শন করতে ব্যবহৃত হয়।
বৈশিষ্ট্য:
- ItemTemplate: প্রতিটি আইটেমের জন্য কাস্টম টেমপ্লেট প্রদান করা যায়।
- AlternatingItemTemplate: প্যারালাল আইটেমগুলো আলাদা ভাবে প্রদর্শন করতে AlternatingItemTemplate ব্যবহার করা হয়।
- EmptyDataTemplate: যদি ডেটা না থাকে তবে এখানে একটি কাস্টম টেমপ্লেট প্রদর্শিত হবে।
উদাহরণ:
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1">
<ItemTemplate>
<div><%# Eval("ColumnName") %></div>
</ItemTemplate>
</asp:Repeater>
এখানে, ColumnName হল ডেটাবেসের কলামের নাম, এবং SqlDataSource1 হল ডেটা সোর্স।
DataList Control
DataList কন্ট্রোল একটি লিস্ট ভিত্তিক ডেটা-বাইন্ড কন্ট্রোল, যা ডেটা তালিকা হিসেবে উপস্থাপন করে। এটি Repeater এর মতো, তবে এতে কিছু অতিরিক্ত বৈশিষ্ট্য রয়েছে, যেমন layout options এবং selection অপশন।
বৈশিষ্ট্য:
- RepeatColumns: ডেটার আইটেমগুলো একাধিক কলামে প্রদর্শন করতে RepeatColumns ব্যবহার করা যায়।
- ItemTemplate: ডেটার প্রতি আইটেম কাস্টম টেমপ্লেট হিসেবে প্রদর্শন করা যায়।
- Selection: নির্দিষ্ট আইটেম নির্বাচন করতে SelectedItemTemplate ব্যবহার করা হয়।
- AlternatingItemTemplate: প্রতিটি অন্য আইটেমে আলাদা স্টাইল প্রয়োগ করা যায়।
উদাহরণ:
<asp:DataList ID="DataList1" runat="server" DataSourceID="SqlDataSource1">
<ItemTemplate>
<div><%# Eval("ColumnName") %></div>
</ItemTemplate>
</asp:DataList>
এখানে, ColumnName ডেটাবেসের কলামের নাম এবং SqlDataSource1 হল ডেটা সোর্স।
GridView, Repeater, এবং DataList এর মধ্যে পার্থক্য
| বৈশিষ্ট্য | GridView | Repeater | DataList |
|---|---|---|---|
| ব্যবহার | বড় ডেটাসেট, পেজিং, সোর্টিং, এডিটিং | ছোট ডেটাসেট, কাস্টমাইজড ডিসপ্লে | ছোট ডেটাসেট, কাস্টম লেআউট |
| ডেটা অপারেশন | Edit, Delete, Update, Paging | কাস্টম অপারেশন প্রয়োজন | কাস্টম লেআউট এবং সিলেকশন |
| পেজিনেশন | সাপোর্ট করে | সাপোর্ট করে না | সাপোর্ট করে না |
| কাস্টমাইজেশন | অনেক কাস্টমাইজেশন সাপোর্ট করে | পূর্ণ কাস্টমাইজেশন সাপোর্ট করে | কিছুটা কাস্টমাইজেশন সাপোর্ট করে |
| পারফরম্যান্স | বড় ডেটাসেটের জন্য অপটিমাইজড | ছোট ডেটাসেটের জন্য দ্রুত | ছোট ডেটাসেটের জন্য দ্রুত |
উপসংহার
GridView, Repeater, এবং DataList তিনটি জনপ্রিয় Data-bound controls, যা ডেটা বাইন্ডিং এবং ডিসপ্লে করার জন্য ব্যবহৃত হয়। GridView বড় ডেটাসেটের জন্য উপযুক্ত, যেখানে Repeater এবং DataList ছোট এবং কাস্টম লেআউট ডেটা ডিসপ্লে করার জন্য আদর্শ। এগুলির মধ্যে পার্থক্যগুলো জানতে পারলে সঠিক কন্ট্রোল নির্বাচন করা সহজ হয়।
Read more